FTP Explorer by Alan Chavis =========================== Copyright Notice ---------------- Copyright (c) 1995-1996 by Alan Chavis FTP Explorer is a trademark of Alan Chavis Release Notes ------------- THIS IS A BETA RELEASE. THIS MEANS THAT YOU WILL ENCOUNTER PROBLEMS. PLEASE HELP ME TO IMPROVE THE PROGRAM BY REPORTING ANY PROBLEMS OR SUGGESTIONS TO: achavis@datacrit.com The main objective of FTP Explorer is to provide an FTP client that looks and feels just like the Windows 95 Explorer interface. Please keep this in mind while evaluating it. When released, FTP Explorer will be distributed FREE for non-commercial use. Commercial pricing is still up in the air, but will be competetive with other FTP clients. Please email me about what you think a fair price would be. THE LATEST RELEASE WILL ALWAYS BE AVAILABLE AT: ftp.datacrit.com /pub/ftpx If you would like to be notified via email about new releases, email me with SUBSCRIBE FTPX in the body text of the email. Disclaimer of Warranty ---------------------- THIS SOFTWARE AND THE ACCOMPANYING FILES ARE PROVIDED "AS IS" AND WITHOUT WARRANTIES OF ANY KIND WHETHER EXPRESSED OR IMPLIED. In no event shall the author be held liable for any damages whatsoever, including without limitation, damages for loss of business profits, business interruption, loss of business information, or any other loss arising from the use or inability to use the software. What's New ---------- * Changes in Version 0.00.020 (04/24/96) - Initial public beta release. * Changes in Version 0.00.019 (04/19/96) - Fixed bug where "Options" dialog was not saving changes to the "Connection" page. - Added "Import" option to "Tools" menu to allow importing connection info from WS_FTP. Other formats will be supported in the future. - Added "Byte Counter" indicator to the status bar to give some feedback when downloading directory contents. - Program now attempts to retain creation original date and time for downloaded files. * Changes in Version 0.00.018 (04/18/96) - Fixed the description feature. It's been broken for a while and I just noticed it! * Changes in Version 0.00.017 (04/17/96) - Added icons to the transfer dialogs. - Changed drag and drop operations from list view to work as "move" operations so that the TEMP dir is cleaned up automatically. - Added code to the "Connect" dialog to set the focus to the profile name combo box after an "Add" or "Remove" operation. - Fixed bug that was caused by fix for older Windows NT FTP servers. Newer NT servers list directory contents differently. - Fixed bug caused by code attempting to update transfer dialog after the dialog was closed. * Changes in Version 0.00.016 (04/09/96) - Program now detects if "Quick View Plus" is installed and reflects this in the "File" menu and context menus. Right now I'm doing this manually, but I hope to add support for any installed "Shell Extension Context Menu Handlers" in the future. For more info about "Quick View Plus" check out http://www.inso.com - Added "Attempts" and "Retry Delay" options to "Connect" dialog to allow customizing these settings on an individual connection basis. These settings default to the settings from the "Options" dialog. * Changes in Version 0.00.015 (04/08/96) - Fixed some bugs on the "Connect" dialog. If you added a new profile, or deleted a profile, the "Profile Name" combo box was not being reloaded. If you changed the name of the current profile, and then saved it or selected a different profile from the combo box, the combo was not updated with the new name properly. - Fixed a bug with the "File" context menu where the "Save As" and "Open" options were not functioning properly. * Changes in Version 0.00.014 (04/07/96) - Fixed a bug that was causing the program to lock up or GPF if you opened the file menu without being connected. This crept into 013 when I added the "Create Shortcut" option to the file menu. * Changes in Version 0.00.013 (04/07/96) - Changed "Autoload File Descriptions" to default to on. - Added "Autoload File Descriptions" size limit to "Options" dialog. This was previously hard coded to 50k. - Implemented asynchronous host lookup call to prevent non-responsiveness during connect sequence. Program was blocking on host lookups before and would not respond or repaint itself until the host name was resolved. - "Options" dialog is now a tabbed dialog with "General", "Paths", and "Connection" pages. - Fixed several problems with date and time field. Program now displays appropriate date and time for current locale. Also, this fixed a problem with sorting by date. - Changed the transfer animations. - Fixed a memory leak that was occurring when a download was cancelled. - Changed "bps" indicators to read "bytes/sec" for more clarity. - Fixed another bug that was causing Log pane to scroll to the right for long lines. - Worked on optimizing download throughput. Program is now performing at least as well as other popular FTP clients. - Added "transfer complete" and "transfer incomplete" notices to FTP log stream. The "transfer complete" notice also displays throughput information. - Added "Create Shortcut" option to "File" and context menus to create a shortcut to a folder on the desktop for the currently selected folder. - Added "Connection Retry" feature. This allows user to configure the number of times to try to connect, and the number of seconds to wait between each try. - Added "Enable sound" option to "General" options page. This allows the user to enable or disable any sounds generated by the program. - Added sounds to connection progress. Program will now play the default "Ding" sound on connecting, and the default "Asterisk" sound when a connection attempt fails. (The specific sounds are configurable via the control panel.) I'll be adding additional sounds in the future. Please let me know where you would like to see sounds added. - Added "Automatically reconnect" option to "Connection" page. This option is currently disabled, but when completed it will allow the program to automatically reconnect if the connection fails. * Changes in Version 0.00.012 (04/05/96) - Added keyboard accelerators to "Connect" and "Options" dialogs. - Added "Window" menu to allow quick switching between Tree, List, and Log views. - Added "Vertical Split" and "Horizontal Split" options to the "Window" menu to allow maniplating splitters via the keyboard. - Added confirmation dialog for delete operations. - Changed "Name" caption on "Connect" dialog to "Profile Name" and "Host" caption to "Host Address" for greater clarity. - Fixed bug where context menu initiated by Shift-F10 was not properly positioned over selected item. - Changed context menus so that they are more context sensitive depending on what is selected. - Added "Save Log As" option to file menu. This allows the FTP log file to be saved. - Removed trailing line feed chars from FTP Log view entries. This eliminates that annoying blank line that used to appear at the bottom of the Log view. - Added "Folder Shortcuts". You can now drag folders to the desktop or shell windows to create a shortcut to the FTP site! I plan to add the ability to drag folders from the Tree view as well. - In implementing the shortcut feature I added a command line option as follows: //Profile Name!/Initial/Path The command line option must start with two slashes, followed by the profile name. The initial path is optional, but if included, must be separated from profile name by an exclamation point. If a path is not specified, then the profile's default path is used. If this syntax ends up being too confusing, I'll probably change it. - Added "Shortcut" button to "Connect" dialog to provide an easy way to add a shortcut for the profile to the desktop. - Added an option to automatically highlight the last line in the FTP log. - Added the rest of the possible "Sort" options to the "Arrange Icons" menus. * Changes in Version 0.00.011 (04/04/96) - Changed connect dialog so bytes transferred is displayed as "(xxx of xxx bytes transferred)". - Fixed tooltips on delete and properties toolbar buttons. - The main program icon got hosed when I added the "Go to" feature. It's now been changed back to the correct icon. - Added code to make the TAB key cycle through the Tree, List, and Log views. - Added code to auto select the first item in the List view when it is loaded. - Fixed bug that was causing Tree and List views to not regain the focus when the program lost and regained focus. - Changed the transfer buffer sizes to 1024 bytes. This seems to help the throughput some, but there's probably some more tuning to do to find the right size. This may become an option. * Changes in Version 0.00.010 (04/03/96) - Fixed bug in connect dialog where garbage was sometimes being appended to strings stored in the registry. - Fixed bug where if invalid initial path was specified in the connect dialog, it would still be added to the tree view. - Password field on "Connect" dialog now hides the password based on whether or not "Anonymous" is selected. - Backspace key now changes to parent directory. - Fixed bug where tree view was not properly tracking the current directory when CD was changed via method other than via tree control. - Added "Go to" command on new "Tools" menu to allow user to go to any specified directory. - Upload dialog now has same indicators as download dialog. (i.e. file size, bytes transfered, etc.) - Added "Bps" (bytes per second) indicator to transfer dialogs * Changes in Version 0.00.009 (04/01/96) - Implemented background downloading. This works by opening a new FTP connection, so it takes a little while before it starts up. Background transfers are only functional for "Save As" and are not available for "Open" and "Quick View" commands due to dependancy issues. Eventually I may come back to this and try to make it work somehow. - Added option to "Options" dialog to allow user to specify the file size threshold for background transfers. - Added code to release the mouse capture after a drag drop operation to fix bug where mouse was not working during download initiated by drag drop. - Added "Add" and "Save" buttons to "Connect" dialog to add and save entries. - The "Remove" button on "Connect" dialog is now functional. - Added filename being transferred to download dialog caption. - Added file size to filename label on download dialog. - Added bytes transferred status indicator to download dialog. - Fixed the sorting routine for the list view. It's been broken since I added the "Description" column. If you clicked on the size column, it sorted by description. Also added the rest of the columns to the sort routine so you can now sort by "Permissions", "Owner" and "Group". - Added "Properties" dialog for item detail information. - Fixed a bug that was making the tree view folders turn yellow before they had been actually opened. This bug was also slowing down the process of filling the tree view. * Changes in Version 0.00.008 (03/28/96) - Program now saves the list style to the registry so that it is restored the next time you run it. - Added an option to specify the default download path to the options dialog. This only effects the "Save As" command. - The "FTP Log" pane is now read only. A side effect of this is that it turned gray. I'm not sure if I like it or not so let me know what you think and maybe I'll force it back to white. - Added an "FTP Log" option to the view menu to easily toggle the "FTP Log" pane on and off. Actually all it does is resize it. - The "FTP Log" pane now attempts to remain the same size when the main window is resized. - You can now cancel a connection attempt by selecting "disconnect" from the file menu or clicking the "disconnect" icon on the toolbar. - Fixed the "connect" icon on the toolbar so that it is disabled during connection attempts. - Removed horizontal scroll bar from "FTP Log" pane. - Transfer dialog is now closing the data socket when the cancel button is selected. This is just a quick fix to kill the transfer, you will probably have to disconnect. - Changed the toolbar icons for "connect" and "disconnect". - The options dialog's caption is now "Options" instead of "Dialog" - DUH. - Fooled around with the main icon a little. Whadaya think? * Changes in Version 0.00.007 (03/26/96) - Program now uploads files dropped on it to the current directory. - Added quick fix for crash if you tried to close the program while it was busy doing something. - Now loading version info from resource info. - Changed EXE name to ftpx.exe. - Added my email address to the about dialog. - Added "initial path" option to connect dialog. - Fixed bug related to new "initial path" option where tree was not working properly if the parent directory had not been listed before. Known Problems -------------- 1. The file formats for the INDEX files on the various FTP sites vary widely, so you can help by using the "Autoload File Descriptions" feature and reporting any problems you have with it. Currently the program only looks for INDEX, INDEX.TXT, and 00_INDEX.TXT, so if you find other filenames or ones that don't load in correctly email them to me. Don't forget to include the address of the server that you get them from so I can test the fixes. 2. Cut, Copy, Paste, and Undo options don't do anything. These may go away. 3. Cancelling a transfer freaks the server out so that you have to disconnect. The FTP RFC documents an ABORT command that is supposed to be useful for cancelling transfers, but it does not seem to work properly. I checked several other FTP clients and they appear to have the same problem. NOTE: This is not as much of a problem since I added background downloading to build 009. If you cancel a background transfer, then it just kills the connection that the background transfer established and the main connection remains in tact. 4. The small icons are hosed. I was using an undocumented API call (ExtractIconEx) to retrieve the small icons, but when I upgraded to VC++ 4.1 it started corrupting memory so I had to take it out. This should be fixed soon. 5. You can drag and drop items from the list view back to itself. Don't try this at home! 6. If you rename or delete a folder, the tree view is not updated properly. 7. Context menus do not reflect current status properly. (i.e. List view type, sort order, etc.) 8. There are some problems associated with shutting down the program while it is busy doing something. Expect to see a few GPF's while I get these worked out. Planned Changes and Additions ----------------------------- 1. Multiple download of all highlighted files. Currently you can drop multiple files for uploading, but not downloading. 2. Transfer of entire directory structures. 3. Will probably add an option to the menu structure to allow you to load in an INDEX file manually, so you don't have to wait every time you change directories. 4. Add drag drop support to tree view. Currently only the list view does any drag and drop. 5. Make recent file list represent recent connections. 6. Add some sort of notification when an action fails, i.e. if the user doesn't have rights to rename a file. This would be useful if you have the "FTP Log" pane sized small enough where you can't see what's going on. 7. Add a way to save the current directory so that it will be used as the initial path the next time you log on to the current server. 8. A help file and an install program is on the way. 9. Add a menu option to change a link so that it is treated as a file, and possibly an option to change the default to treat all links as files. If anyone knows of a simple way to diferentiate between file links and directory links, please clue me in! 10. Need to implement background uploading. 11. Add context menus to the Tree view.